<?php
class WaypointAyuda extends AppModel {
	/**
	 * Nombre de la tabla en base de datos
	 *
	 * Tabla relacionada con el modelo en cuestión, este atributo será usado para la generación 
	 * de consultas a la base de datos
	 *
	 * @var string
	 */
	public $useTable = "waypoints_ayuda";
	/**
	 * Clave primaria de la base de datos
	 *
	 * clave primaria que indentifica cada registro de la tabla en cuestión
	 *
	 * @var string
	 */
	public $primaryKey = "id_waypoint_ayuda";
	/**
	 * Nombre del campo que se muestra cuando se hacen busquedas del modelo
	 *
	 * Nombre del campo que se muestra cuando se hacen busquedas del modelo
	 *
	 * @var string
	 */
	public $displayField = "id_waypoint_ayuda";
	/**
	 * Nivel de recusividad para la busqueda de entidades relacionadas
	 *
	 * Este campo sirve para indicar si una consulta debe incluir las entidades
	 * relacionadas con el modelo en cuestión, -1 quiere decir, 0 q.. y 1 ..
	 *
	 * @var int
	 */
	public $recursive = -1;
	/**
	 * Nombre del modelo
	 *
	 * Nombre del modelo para un alias las consultas y busquedas, ingresos y 
	 * otras interacciones con la base de datos. 
	 *
	 * @var string
	 */
	public $name = "WaypointAyuda";
	/**
	 * Orden por defecto
	 *
	 * Orden por defecto para las consultas que se realicen a la base de datos,
	 * se pueden incluir varios campos de la base de datos. Y si se especifica
	 * otro orden este no se tiene en cuenta.	 
	 *
	 * @var array(string)
	 */
	public $order = array("WaypointAyuda.id_waypoint_ayuda");
	
	/**
	 * Relaciones muchos a uno existentes del modelo
	 */
	public $belongsTo = array(
		"Ruta" => array(
				"className" => "Ruta",
				"foreignKey" => "id_ruta",
			),
	);
	
	/**
	 * Validaciones del modelo
	 *
	 * Validaciones de los diferentes campos que se usan en el modelo
	 *
	 * @var array(array(string))
	 */
	public $validate = array(
        'latitud' => array(
            'notEmpty-1' => array(
				'rule' => 'notEmpty',
				'message' => 'debe ingresar una latitud del waypoint de ayuda',
				'required' => true
			 ),
			'numeric-2' => array(
				'rule' => 'numeric',
				'message' => 'la latitud del waypoint de ayuda debe ser un número'
			),
			'range-3' => array(
				'rule' => array('range', -90, 90),
				'message' => 'la latitud del waypoint de ayuda debe ser un número entre -90 y 90'
			)
        ),
        'longitud' => array(
            'notEmpty-1' => array(
				'rule' => 'notEmpty',
				'message' => 'debe ingresar una longitud del waypoint de ayuda',
				'required' => true
			 ),
			'numeric-2' => array(
				'rule' => 'numeric',
				'message' => 'la longitud del waypoint de ayuda debe ser un número'
			),
			'range-3' => array(
				'rule' => array('range', -180, 180),
				'message' => 'la longitud del waypoint de ayuda debe ser un número entre -180 y 180'
			)
        ),
		"id_waypoint_ayuda" => array(
					"notEmpty" => array(
							"rule" 			=> "notEmpty",
							"allowEmpty" 	=> false,
							"required" 		=> "update",
							"message" 		=> "Id del waypoint de ayuda no puede estar vacio",
					),
					"naturalNumber_NoZero" => array(
							"rule" 			=> array("naturalNumber", false),
							"message" 		=> "Id del waypoint de ayuda debe ser un número entero diferente de cero",
					),
					"isUnique" => array(
							"rule" 			=> array("isUnique"),
							"message" 		=> "Id del waypoint de ayuda debe ser único",
					),
		)
    );
	
}
?>